home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus Extra 1996 #2 / Amiga Plus CD - 1996 - No. 2 Extra.iso / clarissa1_1-demo / macros / set_prefmode.clssa < prev    next >
Text File  |  1995-03-28  |  17KB  |  393 lines

  1. /***********************************************************************
  2.   GADGET: "'Grundeinstellungen'" "7" AUTO TYP: "?"
  3.  
  4.   $DAT >>HE_PrefMode.clssa<<  07.01.1993 - (C) ProDAD Holger Burkarth
  5.        >>Set_PrefMode.clssa<< 29.03.1995 - (C) ProDAD Michael Christoph
  6.        Spezialversion für clariSSA V1.1
  7. ************************************************************************/
  8.  
  9. Options RESULTS
  10. Address clariSSA
  11.  
  12.   FailAt 99
  13.   AltFail=RESULT
  14.  
  15.  
  16.   Einstellung.1 ="EBBACK            ON "     /*   E-Bilder im Hintergrund */
  17.   Einstellung.2 ="SECURITY          ON "     /* X Sicherheitsstatus ein */
  18.   Einstellung.3 ="SLDE              ON "     /*   Schnellader */
  19.   Einstellung.4 ="USEPLAYPOS        OFF"     /* X Framepos nur mit Schieber */
  20.   Einstellung.5 ="SCREENS           ON "     /* X Screensortierung ein */
  21.   Einstellung.6 ="INTERACTION       ON "     /*   hohe Interactivität */
  22.   Einstellung.7 ="SnapWindow        ON "     /* X automatisches Verschieben beim Öffnen */
  23.   Einstellung.8 ="WORKSCREEN        ON "     /* X Workbench eingeschaltet */
  24.   Einstellung.9 ="COLREQOS          ON "     /* X eigener Screen vor ColorRequester */
  25.   Einstellung.10="COMPRESS          4  "     /*   Kompression: B s+ */
  26.   Einstellung.11="DDOFLUSH          3  "     /*   DDO-Löschvolumen: 200 kB */
  27.   Einstellung.12="LOCKAREA          ON "     /*   Bereich befestigen */
  28.   Einstellung.13="USE24BB           ON "     /*   24Bit-Hintergrund */
  29.   Einstellung.14="TWOMONSYS         OFF"     /* X 2-Monitorsystem */
  30.   Einstellung.15="DODMO             OFF"     /*   DMO-Save */
  31.   Einstellung.16="SFAF              ON "     /*   SFAF */
  32.   Einstellung.17="FrameCompensation OFF"     /*   Framekompensation */
  33.   Einstellung.18="LaceCompensation  ON "     /*   Lacekompensation */
  34.   Einstellung.19="LIMMESS           OFF"     /*   Eingeschränkte Eingabe */
  35.   Einstellung.20="HBComp            OFF"     /*   HB-Kompensation */
  36.   Einstellung=20
  37.  
  38.  
  39.   GetPref
  40.   IF RC=0 THEN DO
  41.     /* Einstellbar vom Benutzer */
  42.     Parse var RESULT "SECURITY"    Einstellung.2 .
  43.     Parse var RESULT "USEPLAYPOS"  Einstellung.4 .
  44.     Parse var RESULT "SCREENS"     Einstellung.5 .
  45.     Parse var RESULT "SnapWindow"  Einstellung.7 .
  46.     Parse var RESULT "WORKSCREEN"  Einstellung.8 .
  47.     Parse var RESULT "COLREQOS"    Einstellung.9 .
  48.     Parse var RESULT "TWOMONSYS"   Einstellung.14 .
  49.  
  50.     /* nicht veränderbare Einstellungen */
  51.     Parse var RESULT "EBBACK"            Einstellung.1 .
  52.     Parse var RESULT "SLDE"              Einstellung.3 .
  53.     Parse var RESULT "INTERACTION"       Einstellung.6 .
  54.     Parse var RESULT "COMPRESS"          Einstellung.10 .
  55.     Parse var RESULT "DDOFLUSH"          Einstellung.11 .
  56.     Parse var RESULT "LOCKAREA"          Einstellung.12 .
  57.     Parse var RESULT "USE24BB"           Einstellung.13 .
  58.     Parse var RESULT "DODMO"             Einstellung.15 .
  59.     Parse var RESULT "SFAF"              Einstellung.16 .
  60.     Parse var RESULT "FrameCompensation" Einstellung.17 .
  61.     Parse var RESULT "LaceCompensation"  Einstellung.18 .
  62.     Parse var RESULT "LIMMESS"           Einstellung.19 .
  63.     Parse var RESULT "HBComp"            Einstellung.20 .
  64.  
  65.     /* Einstellbar vom Benutzer */
  66.     Einstellung.2 ="SECURITY          "Einstellung.2
  67.     Einstellung.4 ="USEPLAYPOS        "Einstellung.4
  68.     Einstellung.5 ="SCREENS           "Einstellung.5
  69.     Einstellung.7 ="SnapWindow        "Einstellung.7
  70.     Einstellung.8 ="WORKSCREEN        "Einstellung.8
  71.     Einstellung.9 ="COLREQOS          "Einstellung.9
  72.     Einstellung.14="TWOMONSYS         "Einstellung.14
  73.  
  74.     /* nicht veränderbare Einstellungen */
  75.     Einstellung.1 ="EBBACK            "Einstellung.1
  76.     Einstellung.3 ="SLDE              "Einstellung.3
  77.     Einstellung.6 ="INTERACTION       "Einstellung.6
  78.     Einstellung.10="COMPRESS          "Einstellung.10
  79.     Einstellung.11="DDOFLUSH          "Einstellung.11
  80.     Einstellung.12="LOCKAREA          "Einstellung.12
  81.     Einstellung.13="USE24BB           "Einstellung.13
  82.     Einstellung.15="DODMO             "Einstellung.15
  83.     Einstellung.16="SFAF              "Einstellung.16
  84.     Einstellung.17="FrameCompensation "Einstellung.17
  85.     Einstellung.18="LaceCompensation  "Einstellung.18
  86.     Einstellung.19="LIMMESS           "Einstellung.19
  87.     Einstellung.20="HBComp            "Einstellung.20
  88.  
  89.   END
  90.  
  91.  
  92.  
  93.   DO FOREVER
  94.     MSRequester "TITLE '*** Grundeinstellungen verändern ***'",
  95.                       "''",
  96.                       "'Welche Einstellung möchten Sie verändern ?'",
  97.                       "''",
  98.                       "'Mit <zurück> können Sie alle Einstell-Fenster'",
  99.                       "'verlassen, ohne die Einstellungen zu verändern.'",
  100.                 "PTEXT 'Bildschirme sortieren...'",
  101.                       "'Bearbeitungssicherheit...'",
  102.                       "'Besonderheit beim Window öffnen...'",
  103.                       "'Animationsposition ermitteln...'",
  104.                       "'Farbauswahlfenster...'",
  105.                       "'Workbench öffnen/schließen...'",
  106.                       "'Zwei-Monitorsystem...'",
  107.                       "'** zurück, mit Speichern der Einstellungen **'",
  108.                       "'** Abbruch, ohne Speichern der Einstellungen **'"
  109.     res="BREAK"
  110.     IF RC~=0 | RESULT>8 THEN LEAVE
  111.  
  112.     res="-"
  113.     IF      RESULT=1 THEN res=Screens()
  114.     ELSE IF RESULT=2 THEN res=Security()
  115.     ELSE IF RESULT=3 THEN res=SnapWindow()
  116.     ELSE IF RESULT=4 THEN res=UsePlaypos()
  117.     ELSE IF RESULT=5 THEN res=ColReqOS()
  118.     ELSE IF RESULT=6 THEN res=Workbench()
  119.     ELSE IF RESULT=7 THEN res=Monitorsystem()
  120.     ELSE IF RESULT=8 THEN res="CLOSE"
  121.  
  122.     IF res="CHANGE" THEN Aenderung="JA" /* Schalter in Unterfenster ausgewählt */
  123.     IF res="CLOSE" THEN LEAVE           /* Abbruch in Unterfenster, oder zurück */
  124.   END
  125.  
  126.  
  127. /****** Grundeinstellungen sichern ******/
  128.   IF res~="BREAK" THEN DO
  129.     i=1
  130.     IF Open(ff,"clvars/grundeinstellungen","write") THEN DO
  131.       call WriteLn(ff,"; clariSSA-Grundeinstellungen")  /* Dateikennung */
  132.       DO UNTIL i>Einstellung
  133.         call WriteLn(ff,'"'Einstellung.i'"')
  134.         i=i+1
  135.       END
  136.       datumzeit=Date()", "Time()
  137.       datumzeit=Overlay(".",datumzeit,3,1)
  138.       datumzeit=Overlay(".",datumzeit,7,1)
  139.       call WriteLn(ff,"; letzte Änderung:  "datumzeit)
  140.       call Close(ff)
  141.     END
  142.     ELSE Message "'Einstellungen können nicht in Datei''<clvars/grundeinstellungen>''geschrieben werden.'"
  143.  
  144. /****** geänderte Einstellungen aktivieren ******/
  145.     i=1; Einstellungen=""
  146.     DO UNTIL i>Einstellung; Einstellungen=Einstellungen Einstellung.i; i=i+1; END
  147.     SetPref Einstellungen
  148.   END
  149.  
  150.  
  151.   FailAt AltFail
  152. exit
  153.  
  154.  
  155.  
  156. /***********************************************************************/
  157.  
  158.  
  159. Screens: procedure expose Einstellung.5
  160. DO
  161.  
  162.   /*GetPref
  163.   IF RC=0 THEN Parse var RESULT "SCREENS" activ .; ELSE activ="ON"*/
  164.   Parse var Einstellung.5 "SCREENS" activ .
  165.   IF activ="ON" THEN activtext="Screens automatisch sortieren"
  166.   ELSE activtext="Screens nicht sortieren"
  167.  
  168.   MSRequester "TITLE '*** Grundeinstellungen verändern ***'",
  169.                     "'Bildschirme sortieren...'",
  170.                     "''",
  171.                     "'Werden mehrere Screens verwaltet, so kann es vorkommen, daß'",
  172.                     "'eine Unordnung in der Reihenfolge entsteht. Um dies zu unter-'",
  173.                     "'binden, kann clariSSA eine gezielte Sortierung durchführen.'",
  174.                     "''",
  175.                     "'Bei einer sehr hohen Screenwechselfrequenz entsteht jedoch'",
  176.                     "'ein unschönes Bildschirmflackern.'",
  177.                     "''",
  178.                     "'Aktiv:  "activtext"'",
  179.               "PTEXT 'Screens automatisch sortieren''Screens nicht sortieren''** zurück **'"
  180.   IF RC~=0 THEN RETURN("CLOSE"); ELSE IF RESULT>2 THEN RETURN("ZURUECK")
  181.   IF RESULT=1 THEN Einstellung.5 ="SCREENS           ON "
  182.   ELSE             Einstellung.5 ="SCREENS           OFF"
  183.   /*SetPref Einstellung.5*/
  184.  
  185.   RETURN("CHANGE")
  186. END
  187.  
  188.  
  189. /***********************************************************************/
  190.  
  191.  
  192. Security: procedure expose Einstellung.2
  193. DO
  194.  
  195.   /*GetPref
  196.   IF RC=0 THEN Parse var RESULT "SECURITY" activ .; ELSE activ="ON"*/
  197.   Parse var Einstellung.2 "SECURITY" activ .
  198.   IF activ="ON" THEN activtext="Sicherheitsstatus ein"
  199.   ELSE activtext="Sicherheitsstatus aus"
  200.  
  201.   MSRequester "TITLE '*** Grundeinstellungen verändern ***'",
  202.                     "'Bearbeitungssicherheit...'",
  203.                     "''",
  204.                     "'Bei der Verwendung von Lösch- bzw. Änderungsfunktionen, kann es'",
  205.                     "'von Vorteil sein, wenn jeder Schritt rückgefragt wird.'",
  206.                     "'Besonders bei nicht rückgängigmachbaren Aktionen ist eine'",
  207.                     "'Sicherheitsabfrage wichtig. Damit aber die Arbeit mit clariSSA'",
  208.                     "'nicht zum Requesterspiel wird, kann die Abfragehäufigkeit'",
  209.                     "'eingestellt werden.'",
  210.                     "''",
  211.                     "'Aktiv:  "activtext"'",
  212.               "PTEXT 'Sicherheitsstatus ein (hohe Rückfragehäufigkeit)''Sicherheitsstatus aus (geringe Rückfragehäufigkeit)''** zurück **'"
  213.   IF RC~=0 THEN RETURN("CLOSE"); ELSE IF RESULT>2 THEN RETURN("ZURUECK")
  214.   IF RESULT=1 THEN Einstellung.2 ="SECURITY          ON "
  215.   ELSE             Einstellung.2 ="SECURITY          OFF"
  216.   /*SetPref Einstellung.2*/
  217.  
  218.   RETURN("CHANGE")
  219. END
  220.  
  221.  
  222. /***********************************************************************/
  223.  
  224.  
  225. SnapWindow: procedure expose Einstellung.7
  226. DO
  227.  
  228.   /*GetPref
  229.   IF RC=0 THEN Parse var RESULT "SnapWindow" activ .; ELSE activ="ON"*/
  230.   Parse var Einstellung.7 "SnapWindow" activ .
  231.   IF activ="ON" THEN activtext="automatische Verschiebung ein"
  232.   ELSE activtext="keine Verschiebung"
  233.  
  234.   MSRequester "TITLE '*** Grundeinstellungen verändern ***'",
  235.                     "'Besonderheit beim Window öffnen...'",
  236.                     "''",
  237.                     "'Wird bei clariSSA eine Autoscrolloberfläche verwendet, so können'",
  238.                     "'nicht alle Bereiche gleichzeitig betrachtet werden. Öffnet man'",
  239.                     "'nun ein Window, das keinen Requesterstatus besitzt, so geschieht'",
  240.                     "'dies oft im unsichtbaren Bereich und wird nicht wahrgenommen.'",
  241.                     "'ClariSSA besitzt deshalb eine Ausgleichsfunktion. Hierbei wird'",
  242.                     "'beim Öffnen des Windows der Screen so verschoben, daß das Window'",
  243.                     "'ins Sichtfeld rückt.'",
  244.                     "''",
  245.                     "'Aktiv:  "activtext"'",
  246.               "PTEXT 'automatische Verschiebung ein''keine Verschiebung''** zurück **'"
  247.   IF RC~=0 ThEN RETURN("CLOSE"); ELSE IF RESULT>2 THEN RETURN("ZURUCK")
  248.   IF RESULT=1 THEN Einstellung.7 ="SnapWindow        ON "
  249.   ELSE             Einstellung.7 ="SnapWindow        OFF"
  250.   /*SetPref Einstellung.7*/
  251.  
  252.   RETURN("CHANGE")
  253. END
  254.  
  255.  
  256. /***********************************************************************/
  257.  
  258.  
  259. UsePlaypos: procedure expose Einstellung.4
  260. DO
  261.  
  262.   /*GetPref
  263.   IF RC=0 THEN Parse var RESULT "USEPLAYPOS" activ .; ELSE activ="OFF"*/
  264.   Parse var Einstellung.4 "USEPLAYPOS" activ .
  265.   IF activ="ON" THEN activtext="Play-Position verwenden"
  266.   ELSE activtext="Frame-Position nur mit Schieber verändern"
  267.  
  268.   MSRequester "TITLE '*** Grundeinstellungen verändern ***'",
  269.                     "'Animationsposition ermitteln...'",
  270.                     "''",
  271.                     "'Soll eine bestimmte Frameposition ermittelt werden, so kann dies'",
  272.                     "'aus einem Abspielvorgang heraus erfolgen. Hierzu wird die aktuelle'",
  273.                     "'Position beim Abbruch des Abspielens, als aktuelle Editierposition'",
  274.                     "'verwendet. Jedoch kann dies bei bestimmten Editiervorgängen zu'",
  275.                     "'ungewollten Positionsänderungen führen.'",
  276.                     "''",
  277.                     "'Aktiv:  "activtext"'",
  278.               "PTEXT 'Play-Position verwenden''Frame-Position nur mit Schieber verändern''** zurück **'"
  279.   IF RC~=0 THEN RETURN("CLOSE"); ELSE IF RESULT>2 THEN RETURN("ZURUECK")
  280.   IF RESULT=1 THEN Einstellung.4 ="USEPLAYPOS        ON "
  281.   ELSE             Einstellung.4 ="USEPLAYPOS        OFF"
  282.   /*SetPref Einstellung.4*/
  283.  
  284.   RETURN("CHANGE")
  285. END
  286.  
  287.  
  288. /***********************************************************************/
  289.  
  290.  
  291. ColReqOS: procedure expose Einstellung.9
  292. DO
  293.  
  294.   /*GetPref
  295.   IF RC=0 THEN Parse var RESULT "COLREQOS" activ .; ELSE activ="ON"*/
  296.   Parse var Einstellung.9 "COLREQOS" activ .
  297.   IF activ="ON" THEN activtext="Neuen Screen verwenden"
  298.   ELSE activtext="Benutzeroberfläche verwenden"
  299.  
  300.   MSRequester "TITLE '*** Grundeinstellungen verändern ***'",
  301.                     "'Farbauswahlfenster...'",
  302.                     "''",
  303.                     "'Bei der Bearbeitung von Color-Effekten (Farben) erlauben einige'",
  304.                     "'Funktionen die Auswahl von Farbbereichen. Hierbei wird ein'",
  305.                     "'Requester zur Darstellung der Farben benötigt.'",
  306.                     "'Da die clariSSA-Oberfläche speichersparend erstellt wurde,'",
  307.                     "'können nur wenig Farben nebeneinander Angezeigt werden.'",
  308.                     "'Diese Darstellung ist beim Wählen aus vielen Farben ungeeignet'",
  309.                     "'und kann auch umgangen werden. Hierzu wird ein neuer Screen mit'",
  310.                     "'einer größeren Farbtiefe verwendet. Jedoch benötigt dies mehr'",
  311.                     "'Speicherplatz und kann zu einer ungewollten Screenvielfalt führen.'",
  312.                     "''",
  313.                     "'Aktiv:  "activtext"'",
  314.               "PTEXT 'Neuen Screen verwenden''Benutzeroberfläche verwenden''** zurück **'"
  315.   IF RC~=0 THEN RETURN("CLOSE"); ELSE IF RESULT>2 THEN RETURN("ZURUECK")
  316.   IF RESULT=1 THEN Einstellung.9 ="COLREQOS          ON "
  317.   ELSE             Einstellung.9 ="COLREQOS          OFF"
  318.   /*SetPref Einstellung.9*/
  319.  
  320.   RETURN("CHANGE")
  321. END
  322.  
  323.  
  324. /***********************************************************************/
  325.  
  326.  
  327. Workbench: procedure expose Einstellung.8
  328. DO
  329.  
  330.   /*GetPref
  331.   IF RC=0 THEN Parse var RESULT "WORKSCREEN" activ .; ELSE activ="ON"*/
  332.   Parse var Einstellung.8 "WORKSCREEN" activ .
  333.   IF activ="ON" THEN activtext="Workbench offen"
  334.   ELSE activtext="Workbench geschlossen"
  335.  
  336.   MSRequester "TITLE '*** Grundeinstellungen verändern ***'",
  337.                     "'Workbench öffnen/schließen...'",
  338.                     "''",
  339.                     "'Soll die Workbench im Hintergrund offen liegen bleiben,'",
  340.                     "'oder soll sie geschlossen werden?'",
  341.                     "''",
  342.                     "'Durch das Schließen der Workbech bekommen Sie mehr Speicher.'",
  343.                     "'Sie können die Workbench aber nur schließen, wenn keine'",
  344.                     "'Programm davon gestartet worden sind und keine Programm-'",
  345.                     "'fenster offen sind. Verzeichnisfenster der Workbench werden'",
  346.                     "'aber automatisch geschlossen.'",
  347.                     "''",
  348.                     "'Aktiv:  "activtext"'",
  349.               "PTEXT 'Workbench öffnen''Workbench schließen''** zurück **'"
  350.   IF RC~=0 THEN RETURN("CLOSE"); ELSE IF RESULT>2 THEN RETURN("ZURUECK")
  351.   IF RESULT=1 THEN Einstellung.8 ="WORKSCREEN        ON "
  352.   ELSE             Einstellung.8 ="WORKSCREEN        OFF"
  353.   /*SetPref Einstellung.8*/
  354.  
  355.   RETURN("CHANGE")
  356. END
  357.  
  358.  
  359. /***********************************************************************/
  360.  
  361.  
  362. Monitorsystem: procedure expose Einstellung.14
  363. DO
  364.  
  365.   /*GetPref
  366.   IF RC=0 THEN Parse var RESULT "TWOMONSYS" activ .; ELSE activ="OFF"*/
  367.   Parse var Einstellung.14 "TWOMONSYS" activ .
  368.   IF activ="ON" THEN activtext="Verwende zwei Monitore"
  369.   ELSE activtext="Verwende nur einen Monitor"
  370.  
  371.   MSRequester "TITLE '*** Grundeinstellungen verändern ***'",
  372.                     "'Zwei-Monitorsystem...'",
  373.                     "''",
  374.                     "'Wenn Sie eine Grafikkarte besitzen und daran zwei Monitore'",
  375.                     "'angeschlossen haben, können Sie durch Aktivierung des'",
  376.                     "'Zwei-Monitorsystems in clariSSA auch beide Monitore einsetzen.'",
  377.                     "'Es erscheint dann auf dem einen Monitor die Arbeitsober-'",
  378.                     "'fläche und auf dem anderen Monitor ist das aktuelle Bild'",
  379.                     "'der Animation zu sehen.'",
  380.                     "''",
  381.                     "'Aktiv:  "activtext"'",
  382.               "PTEXT 'Verwende zwei Monitore''Verwende nur einen Monitor''** zurück **'"
  383.   IF RC~=0 THEN RETURN("CLOSE"); ELSE IF RESULT>2 THEN RETURN("ZURUECK")
  384.   IF RESULT=1 THEN Einstellung.14="TWOMONSYS         ON "
  385.   ELSE             Einstellung.14="TWOMONSYS         OFF"
  386.   /*SetPref Einstellung.14*/
  387.  
  388.   RETURN("CHANGE")
  389. END
  390.  
  391.  
  392. /***********************************************************************/
  393.